Informatiker sind die besten Überlebenskünstler
Man stelle sich einmal einen Informatiker im tiefsten Winter
in einem dunklen Wald von hungrigen Wölfen gejagt vor. Hier
ist der Informatiker geradezu in seinem Element. Er steht
nämlich vor einem Problem, und solche zu lösen hat er ja wäh-
rend seines Studiums sehr ausführlich und mühsam erlernt. Das
Problem ist zwar bereits gegeben, aber irgendwann einmal hat
er vor langer, langer Zeit gelernt, daß ein Problem erst spe-
zifiziert sein will. Er beginnt also:
Gegeben: Landschaft mit 1 Informatiker und n Wölfen, n aus
NAT
Gesucht: Landschaft mit 1 Informatiker und keinen Wölfen
Lösungsweg: Wölfe mit einem Prügel verjagen.
Sicher kann sich unser Informatiker denken, daß das Problem
nicht einfach zu lösen ist. Also beginnt er, es in Teilpro-
bleme zu zerlegen. Etwa in n Teilprobleme:
für alle i aus (1..n): den Wolf i verjagen.
Nun ist unser Informatiker übergluecklich. Er benutzt eine
simple FOR...NEXT-Schleife, in der er nacheinander die n Teil-
probleme löst und somit seine Teillösungen sogar schon zu
einer Gesamtlösung zusammengesetzt hat. Daß der Algorithmus
korrekt ist und terminiert, hat unser Informatiker schnell
bewiesen. Was nun weiter geschieht, ist typisch, wenngleich
es zwei Möglichkeiten gibt.
Fall 1 - Wir haben einen Durchschnittsinformatiker vor uns.
In Ermangelung eines Rechners benutzt er sich selbst als Ma-
schine und läßt das Programm auf sich ablaufen. Er beginnt
damit, den Wolf Nr. 1 zu verjagen, kommt zu Wolf Nr. 2, doch
spätestens jetzt hat ihn ein Wolf, der laut Algorithmus noch
gar nicht an der Reihe ist, ins Bein gebissen, worauf er in
Panik gerät, das ganze schöne formale Denken vergißt und ein-
fach instinktiv die Flucht ergreift. Später dann, wenn er in
Sicherheit ist und wieder klar denken kann, bricht eine ganze
Welt in ihm zusammen. Dies kommt davon, wenn man sich als
Durchschnittsinformatiker mit praktischen Problemen beschäftigt.
Fall 2 - Ganz anders, wenn wir einen hochbegabten, mathema-
tisch besonders geschulten Informatiker aus Karlsruhe
in die Wildnis schicken, der schon nach dem 3. Se-
mester das Vordiplom und nach dem 7. das Hauptdiplom
gemacht hat.
Er sieht zwar n Wölfe, zweifelt jedoch daran, daß die Zahl der
Wölfe ohne sein Zutun konstant bleiben wird. Es könnten ja
während des Verjagens eine noch nicht verjagte Wölfin Junge
werfen. Um den Aufwand des Wölfeverjagens unter diesem Aspekt
abzuschätzen, muß zuerst eine Differentialgleichung gelöst
werden, ganz abgesehen davon, daß das Problem neu spezifiziert
werden muß. Mit Erschrecken stellt unser Informatiker fest,
daß ab einem bestimmten n der Algorithmus nicht mehr terminiert
(es werden in gleicher Zeit mehr Junge geworfen, als er Wölfe
verjagen kann). Er wird also eine neue Spezifikation vornehmen.
Gegeben: Ort a mit n Wölfen und 1 Informatiker, ein Ort b;
Gesucht: Ort a mit n+k Wölfen (k ist die Anzahl der zwi-
schenzeitlich geborenen Wölfe), ein Ort b ohne
Wölfe mit mindestens einem Informatiker.
Lösungsweg: Flucht von Ort a nach Ort b.
Nach Ausführung seines Algorithmus trifft er dann auf unseren
Durchschnittsinformatiker, der wahrscheinlich auf eine Baum-
spitze geflüchtet ist, wohin er sich eilends auch begibt und
wartet, bis die Wölfe wieder abziehen. Sind die Wölfe erst weg,
so werden sich beide Informatiker schnell darüber einig, daß
man den Baum am besten per rekursivem Abstieg herunterkommt.
Da sie lange auf dem Baum saßen, waren sie stark durchgefroren.
Doch zum Glück kam ihnen eine alte Algorithmenentwurfsmethode
entgegen, und eine alte Axt, die herumlag, entpuppte sich als
ein ausgezeichnetes Programmierwerkzug.
converted with guide2html by Kochtopf